#ifndef _EXITERROR_H_INCLUDED_
#define _EXITERROR_H_INCLUDED_


/*/////////////////////// Constantes de exiterror - BEGIN - /////////////////////////////*/
/*///////////////////////////////////////////////////////////////////////////////////////*/

#define ERROR_SUCCESS					0
#define ERROR_INVALID_OPTION				1
#define ERROR_MISSING_REQUIRED_PARAMETER		2
#define ERROR_INVALID_COMMAND_LINE			3
#define ERROR_INVALID_RESOLUTION			4



#define ERROR_NEED_ARGUMENTS				5
#define ERROR_NOT_NEED_ARGUMENTS			6


#define ERROR_ONLY_ONE_OUTPUT				7
#define ERROR_ONLY_ONE_RESOLUTION			8


#define ERROR_ALLOCATING_MEMORY				9


#define ERROR_CANNOT_OPEN_FILE				10
#define ERROR_WRITING_TO_OUTPUT				11
#define ERROR_PROCESSING_INPUT				12

#define ERROR_CANNOT_OPEN_OUTPUT_FILE			13

#define ERROR_UNEXPECTED				100


#define INFO_STR_DEFAULTING_RESOLUTION			"Using default resolution: \"8x8\".\n"
#define INFO_STR_DEFAULTING_OUTPUT_TO_STDOUT		"Using default output: \"stdout\".\n"
#define INFO_STR_BOARD_SIZE				"Board size: %ldx%ld.\n"

/*///////////////////////// Constantes de exiterror - END - /////////////////////////////*/
/*///////////////////////////////////////////////////////////////////////////////////////*/


/*/////////////////// Variables globales que se exportan - BEGIN - //////////////////////*/
/*///////////////////////////////////////////////////////////////////////////////////////*/

/*
Puntero al nombre del archivo que está siendo procesado
para ser usado en caso de error en el mensaje al usuario.
*/
const char* pprocfilename;

/*/////////////////// Variables globales que se exportan - END - ////////////////////////*/
/*///////////////////////////////////////////////////////////////////////////////////////*/


/*////////////////////////// Funciones que se exportan - BEGIN - ////////////////////////*/
/*///////////////////////////////////////////////////////////////////////////////////////*/

void messageerror(const int status);

void messageinfo(const char * format, ...);
/*////////////////////////// Funciones que se exportan - END - //////////////////////////*/
/*///////////////////////////////////////////////////////////////////////////////////////*/

#endif /* _EXITERROR_H_INCLUDED_ */
